package top.lunarye.utils;

import cn.hutool.core.exceptions.UtilException;
import cn.hutool.crypto.digest.DigestUtil;

/**
 * @description: 摘要加密工具箱
 * @author: lunar
 * @since: 2021-07-13
 */
public class DigesterUtil {
    /**
     * 用于对一个字符串进行摘要加密
     * @param var 需要加密的字符串
     * @param salt 盐值
     * @return 加密完成之后的值
     * @throws IllegalArgumentException 在输入的字符为空或者为null的时候抛出错误
     */
    public static String digestHaxWithSalt(String var, String salt) throws UtilException {
        try {
            JudgeUtil.judgeStringsNullAndBlank(var, salt);
        } catch (IllegalArgumentException e) {
            throw new UtilException("摘要加密的时候输入的参数不能是null或者空字串");
        }
        String md5Hex1 = DigestUtil.md5Hex(var);
        return DigestUtil.md5Hex(md5Hex1 + salt);
    }
}
